package uba.ing2.subite.demo;

import java.util.Collection;
import java.util.List;

import uba.ing2.subite.domain.Autobus;
import uba.ing2.subite.domain.AutobusTerminal;
import uba.ing2.subite.domain.BusTripInvoice;
import uba.ing2.subite.domain.Invoice;
import uba.ing2.subite.domain.LegalEntity;
import uba.ing2.subite.domain.PaymentCard;

public class SubiteDemoModel {
	private static final LegalEntity LEGAL_ENTITY = new LegalEntity("Linea 17");
	private static final AutobusTerminal AUTOBUS_TERMINAL = new AutobusTerminal("123", LEGAL_ENTITY, new Autobus("CVQ-097"));
	private List<StringView<PaymentCard>> paymentCardsWithDescription;
	private List<Number> ticketValues;
	private Number selectedTicketValue;
	private PaymentCard selectedCard;
	
	public SubiteDemoModel(List<StringView<PaymentCard>> cardsWithDescription, List<Number> ticketValues) {
		this.paymentCardsWithDescription = cardsWithDescription;
		this.ticketValues = ticketValues;
		
	}

	public Collection<Number> getTicketValues() {
		return ticketValues;
	}

	public void setSelectedTicketValue(Number value) {
		selectedTicketValue = value;
	}

	public List<StringView<PaymentCard>> getPaymentCardsWithDescription() {
		return paymentCardsWithDescription;
	}

	public void setSelectedCard(PaymentCard paymentCard) {
		selectedCard = paymentCard;
	}

	public PaymentCard getSelectedCard() {
		return selectedCard;
	}

	public Invoice getBusTripInvoice() {
		return new BusTripInvoice(AUTOBUS_TERMINAL, 1, selectedTicketValue);
	}
}
